package main

import (
	"fmt"
	"go-gorm/global"
	"gorm.io/driver/mysql"
	"gorm.io/gorm"
)

var (
	//定义数据库连接的相关参数值
	//连接数据库的用户名
	userName = "root"
	//连接数据库的密码
	password = "Qq123123"
	//连接数据库的地址
	ipAddress = "127.0.0.1"
	//连接数据库的端口号
	port = 3306
	//连接数据库的具体数据库名称
	dbName = "test"
	//连接数据库的编码格式
	charset = "utf8mb4"
	//想要能正确的处理 time.Time，你需要添加 parseTime 参数。
	parseTime = "True"
	//设置时间的位置
	loc = "Local"
)

func main() {
	err := connectMysql()
	if err != nil {
		fmt.Println("初始化数据库失败,err", err)
		return
	}
}

func connectMysql() (err error) {
	// dsn="root:root@tcp(127.0.0.1:3306)/test?charset=utf8mb4&parseTime=True&loc=Local"
	dsn := fmt.Sprintf("%s:%s@tcp(%s:%d)/%s?charset=%s&parseTime=%s&loc=%s", userName, password, ipAddress, port, dbName, charset, parseTime, loc)
	db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{})
	if err != nil {
		fmt.Println("连接数据库异常,err", err)
		return err
	}
	global.DB = db
	fmt.Println("连接数据库成功！")
	return nil
}
